package somospunto.negocio;

import java.util.Collection;

import javax.security.auth.login.LoginException;

import somospunto.dao.SupermercadoDAO;
import somospunto.dao.UsuarioDAO;
import somospunto.excepcion.DAOExcepcion;
import somospunto.modelo.Supermercado;
import somospunto.modelo.Usuario;
import somospunto.excepcion.LoginExcepcion;

public class UsuarioReg {
	
	
	public void InsertarUsuari(String idusuario, String nombre, String ap_pat_user, 
			String ap_mat_user, String mail_user, String pass_user, String rango_user,
			String habil) throws DAOExcepcion {

		Usuario modelo = new Usuario();
		
		modelo.setNombre(nombre);
		modelo.setPaterno(ap_pat_user);
		modelo.setMaterno(ap_mat_user);
		modelo.setEmail(mail_user);
		modelo.setContrasena(pass_user);
		modelo.setRango(rango_user);
		modelo.setHabilitado(habil);
		UsuarioDAO dao = new UsuarioDAO();
		dao.insertar(modelo);
	}

	public void Modificar(String nombre,String pat,String mat,String pass,String mail) throws DAOExcepcion {

		Usuario modelo = new Usuario();
		modelo.setNombre(nombre);
		modelo.setPaterno(pat);
		modelo.setMaterno(mat);
		modelo.setContrasena(pass);
		modelo.setEmail(mail);
		
		UsuarioDAO dao = new UsuarioDAO();
		dao.Modifica(modelo);
	}

	public void ModificarUsuarioAdmin(String nombre,String pat,String mat,String pass,
			String habil, String rango,String mail) throws DAOExcepcion {

		Usuario modelo = new Usuario();
		modelo.setNombre(nombre);
		modelo.setPaterno(pat);
		modelo.setMaterno(mat);
		modelo.setContrasena(pass);
		modelo.setRango(rango);
		modelo.setHabilitado(habil);
		modelo.setEmail(mail);
		UsuarioDAO dao = new UsuarioDAO();
		dao.modificarcomoadmi(modelo);
	}
	
	public void BuscarPorCorreo(String mail) throws DAOExcepcion{
		
		Usuario modelo = new Usuario();
		modelo.setEmail(mail);
		UsuarioDAO dao = new UsuarioDAO();
		dao.BuscarUsuarioPorCorreo(modelo);
		
	}

	public Usuario validarUsuario(String idUsuario, String clave)
			throws DAOExcepcion, LoginExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.validar(idUsuario, clave);
	}
	
	public Collection<Usuario> listarUsuario() throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.listar();
	}
		
	}
	

